From a4d9e92f660618dedf5fdeb51a86f3113c1a4d8b Mon Sep 17 00:00:00 2001 From: Rob Bradford Date: Sun, 4 Aug 2013 14:36:01 +0100 Subject: [PATCH] wayland: Dispatch pending events before entering poll If we don't dispatch the pending events then we can enter poll with events still requiring to be processed and which can then lead to us deadlocking there. --- gdk/wayland/gdkeventsource.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gdk/wayland/gdkeventsource.c b/gdk/wayland/gdkeventsource.c index 619ee872c1..9dda53a1ff 100644 --- a/gdk/wayland/gdkeventsource.c +++ b/gdk/wayland/gdkeventsource.c @@ -50,6 +50,9 @@ gdk_event_source_prepare(GSource *base, gint *timeout) return TRUE; if (wl_display_flush (display->wl_display) < 0) + g_error ("Error flushing display: %s", g_strerror (errno)); + + if (wl_display_dispatch_pending (display->wl_display) < 0) g_error ("Error dispatching display: %s", g_strerror (errno)); return FALSE; -- 2.30.2